function [salida,s1]=retardar(entrada,s,fs,retardo,Fentrada)

if nargin<5
    [M,N]=size(entrada);
    Fentrada=fft(entrada);
    Fentrada=Fentrada(1:(M/2+1),:);
else
    %ignoro entrada pulso
    M=round(2*(size(Fentrada,1)-1));
    N=size(Fentrada,2);
end

% Entrada es una matriz de N señales
% Si retardo es un escalar, retardo todas lo mismo, si es un vector hago un
% retardo distinto para cada columna
retardo1=min(retardo); %CHANGED
if retardo1<0
    retardo1=max(retardo);
end
s1=floor(retardo1*fs);
delay=fs*retardo-s1;
s1=s1+s;
aux=exp(-2*pi*1i*mod(delay/M,1));
Wb=matrizPotencia(aux,[0:(M/2)]');
%Wb(M/2+1,:)=real(Wb(M/2+1,:));
YF=Fentrada.*Wb;
if nargin<5
    salida=reconstr(YF);
else
    salida=YF;
end
end